package IO流.文件字节流;

import java.io.*;

public class $01_异常处理 {
    public static void main(String[] args){
        //创建输入流和输出流
        InputStream inputStream= null;
        OutputStream outputStream= null;
        /**
         * 如果把实例化对象放在try里面那么就不会初心最后因为没有关闭流的错误，甚至可以不用自己关闭流
         * try (InputStream inputStream=new FileInputStream("F:\\javayws.txt");
         * OutputStream outputStream=new FileOutputStream("F:\\javayws2.txt");){
         *
         * }
         * */
        try {//输入流和输出流在一个try-catch中是因为只要输入流没有创建成功那么就不用创建输出流
            inputStream = new FileInputStream("F:\\javayws.txt");
            outputStream=new FileOutputStream("F:\\javayws2.txt");
            byte []bytes=new byte[1024];
            int len=inputStream.read(bytes);
            while (len!=-1) {
                outputStream.write(bytes,0,len);
                len=inputStream.read(bytes);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }finally {//两个字节流关闭程序不能再一个try catch中，因为不管第一个是否正常都应该关闭第二个
            try {
                inputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
            try {
                outputStream.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}
